// 页面加载初始化方法
$(function() {
	// 加载数据平台信息
	init();
});
// 页面初始化调用方法
function init() {
	// 1.初始化Table
	var astsSysLogTable = new TableInit();
	astsSysLogTable.Init();
}
/**
 * 表格初始化
 */
var TableInit = function() {
	var oTableInit = new Object();
	// 初始化Table
	oTableInit.Init = function() {
		$('#astsSysLogTables').bootstrapTable({
			url : '../../../astsSysLog/getAstsSysLogInfoList', // 请求后台的URL（*）
			method : "POST",
			contentType : "application/x-www-form-urlencoded",
			toolbar : '#toolbar',
			striped : true, // 是否显示行间隔色
			cache : false, // 是否使用缓存，默认为true，所以一般情况下需要设置一下这个属性（*）
			pagination : true, // 是否显示分页（*）
			sortable : true, // 是否启用排序
			checkboxHeader : false,// 是否显示表头的全选
			queryParamsType : "undefined", // 默认limit
			queryParams : oTableInit.queryParams,// 传递参数（*）
			sidePagination : "server", // 分页方式：client客户端分页，server服务端分页（*）
			pageNumber : 1, // 初始化加载第一页，默认第一页
			pageSize : 10, // 每页的记录行数（*）
			pageList : [ 10, 25, 50, 100 ], // 可供选择的每页的行数（*）
			sortName : "OPERATE_TIME",
			sortOrder : "DESC",
			search : false, // 是否显示表格搜索，此搜索是客户端搜索，不会进服务端，所以，个人感觉意义不大
			strictSearch : true,
			showColumns : true, // 是否显示所有的列
			minimumCountColumns : 2, // 最少允许的列数
			clickToSelect : true, // 是否启用点击选中行
			height : 500, // 行高，如果没有设置height属性，表格自动根据记录条数觉得表格高度
			uniqueId : "LOG_ID", // 每一行的唯一标识，一般为主键列
			showToggle : true, // 是否显示详细视图和列表视图的切换按钮
			cardView : false, // 是否显示详细视图
			detailView : false,
			onLoadSuccess:function(){
	            $('.bootstrap-table tr td').each(function () {
	                $(this).attr("title", $(this).text());
	                $(this).css("cursor", 'pointer');
	            });
	        },
			responseHandler : function(res) {
				return getTableData(res);
			}, // 是否显示父子表
			columns : [ {
				field : 'LOG_ID',
				visible : false
			}, {
				field : 'LOGIN_NAME',
				title : '登录名'
			}, {
				field : 'USER_NAME',
				title : '用户名称'
			}, {
				field : 'DEP_NAME',
				title : '所在单位'
			}, {
				field : 'OPERATE_TYPE',
				title : '日志类型',
				formatter : status
			}, {
				field : 'OPERATE_TIME',
				title : '操作时间',
				sortable : true,// 是否可排序
				order : "DESC",// 默认排序方式
				formatter : dateForMatter
			}, {
				field : 'LOG_DETAIL',
				title : '操作结果'
			} ]
		});
	};

	function dateForMatter(date, row, index){
		if (row.OPERATE_TIME != null) {
			date = new Date(row.OPERATE_TIME);
			var y = date.getFullYear();
			var M = date.getMonth() + 1;
			var d = date.getDate();
			var h = date.getHours();
			var m = date.getMinutes();
			var s = date.getSeconds();
			var html = "";
			html += y + "-";
			if (M < 10) {
				html += "0";
			}
			html += M + "-";
			if (d < 10) {
				html += "0";
			}
			html += d + " ";
			if (h < 10) {
				html += "0";
			}
			html += h + ":";
			if (m < 10) {
				html += "0";
			}
			html += m + ":";
			if (s < 10) {
				html += "0";
			}
			html += s;
			return html;
		} else {
			return "";
		}
	}
	function status(value, row, index) {
		if (row['OPERATE_TYPE'] == null) {
			return "用户登入登出";
		} else if (row['OPERATE_TYPE'] == "2") {
			return "人员管理";
		} else if (row['OPERATE_TYPE'] == "3") {
			return "组织机构管理";
		} else if (row['OPERATE_TYPE'] == "4") {
			return "角色权限管理";
		} else if (row['OPERATE_TYPE'] == "5") {
			return "功能模块管理";
		} else if (row['OPERATE_TYPE'] == "6") {
			return "数据字典管理";
		} else if (row['OPERATE_TYPE'] == "7") {
			return "平台信息管理";
		} else if (row['OPERATE_TYPE'] == "8") {
			return "客户端信息管理";
		} else if (row['OPERATE_TYPE'] == "9") {
			return "密码设置";
		}else if (row['OPERATE_TYPE'] == "10") {
			return "基本用例管理";
		}else if (row['OPERATE_TYPE'] == "11") {
			return "测试序列管理";
		}
	}
	// 得到查询的参数
	oTableInit.queryParams = function(params) {
		var logType = $("#astsSysLogOperateType").val();
		if (logType == "0") {
			logType = null;
		}
		var temp = { // 这里的键的名字和控制器的变量名必须一直，这边改动，控制器也需要改成一样的pageSize,
			// pageNumber, searchText, sortName, sortOrder
			pageSize : params.pageSize, // 页面大小
			pageNumber : params.pageNumber, // 页码
			sortName : params.sortName,
			sortOrder : params.sortOrder,
			userName : $('#astsSysLogNameSearch').val(),
			beginTime : $("#astsSysLogLoginTime input").val(),
			endTime : $("#astsSysLogEndTime input").val(),
			logType : logType
		};
		return temp;
	};
	return oTableInit;
};